#ifndef OBJET_H
#define OBJET_H

class Scene;//pour eviter les references croisée

class Objet
{
  public:
  //Constructeur
  Objet();
  //Destructeur
  virtual ~Objet();
  //Position
  virtual  void setPosition(const float x, const float y, const float z);
  void getPosition(float &x, float &y, float&z);
  //Rotation en degre
  void setRotationX(const float angle);
  float getRotationX();
  void setRotationY(const float angle);
  float getRotationY();
  void setRotationZ(const float angle);
  float getRotationZ();
  
  //la scene
  virtual void setScene(Scene *s);
  Scene* getScene();
  
  //distance a la camera
  float distanceCarreeACamera();
  
  
  //les instructions d'affichage
  virtual void display()=0;

  protected:
  
  float _position[3];
  float _rotation[3];
  
  Scene *_scene;//l'objet connait la scene a laquelle il appartient
};

#endif

